<?php
require_once ('ConstrucaoCivil.php');
require_once ('IdentificacaoRps.php');
require_once ('Intermediario.php');
require_once ('Prestador.php');
require_once ('Servico.php');
require_once ('TomadorServico.php');



/**
 * @version 1.0
 * @created 09-out-2013 22:01:12
 */
class Rps
{

	private $Id;
	private $Competencia;
	private $DataEmissao;
	private $Status;
	
	private $IncentivoFiscal;
	private $OptanteSimplesNacional;
	private $RegimeEspecialTributacao;
		
	private $IdentificacaoRps; //IdentificacaoRps
	private $RpsSubstituido; //IdentificacaoRps
	private $Servico; //Servico
	private $Prestador; //Prestador
	private $TomadorServico; //TomadorServico
	private $Intermediario;	 //Intermediario
	private $ConstrucaoCivil; //ConstrucaoCivil
	


	function __construct()
	{
	}

	function __destruct()
	{
	}

	static function _factory()
	{
		return new Rps;
	}	
	
	public function __get($propriedade)
	{
		return $this->$propriedade;
	}	
	
	public function __set($propriedade, $valor)
	{
		$this->$propriedade	=	$valor;
	}	
	

	
	public function populaDados($dados)
	{
                if ( isset($dados["InfDeclaracaoPrestacaoServico"]) ){
                    $dados = $dados["InfDeclaracaoPrestacaoServico"];
                }
		
		$obIdentificacaoRps	=	new IdentificacaoRps();
		$obIdentificacaoRps->populaDados($dados["Rps"]["IdentificacaoRps"]);
		$this->__set("IdentificacaoRps", $obIdentificacaoRps);		
		
		$this->__set("DataEmissao", $dados["Rps"]["DataEmissao"]);
		$this->__set("Status", $dados["Rps"]["Status"]);
		
		$this->__set("Competencia", $dados["Competencia"]);
		$this->__set("OptanteSimplesNacional", $dados["OptanteSimplesNacional"]);
		$this->__set("RegimeEspecialTributacao", $dados["RegimeEspecialTributacao"]);
		$this->__set("IncentivoFiscal", $dados["IncentivoFiscal"]);
		
		$objServico	=	new Servico();
		$objServico->populaDados($dados["Servico"]);
		$this->__set("Servico", $objServico);
				
		$objIdPrestador=	new IdentificacaoPessoa();
		$objIdPrestador->populaDados($dados["Prestador"]);
		$objPrestador	=	new Prestador();
		$objPrestador->__set("IdentificacaoPrestador", $objIdPrestador);
		
		$this->__set("Prestador", $objPrestador);
		
		$objTomador=	new TomadorServico();
		$objTomador->populaDados($dados["TomadorServico"]);
		$this->__set("TomadorServico", $objTomador);		
		
		$objIntermediario=	new Intermediario();
		$objIntermediario->populaDados($dados["Intermediario"]);
		$this->__set("Intermediario", $objIntermediario);		
		
		$objConstrucaoCivil=	new ConstrucaoCivil();
		$objConstrucaoCivil->populaDados($dados["ConstrucaoCivil"]);
		$this->__set("ConstrucaoCivil", $objConstrucaoCivil);		
		
	}

}
?>